Esta sessão introdutória vai além da caótica cultura "salvar como" para definir Sistemas de Controle de Versão (VCS) como ferramentas especializadas para gestão de mudanças. Examinamos a transição de uma duplicação manual e primitiva de arquivos — exemplificada por objetos como meu-trabalho-de-conclusão-2.doc—para sistemas estruturados que tratam o histórico como uma série de instantâneos lógicos.
1. A Armadilha dos Sufixos
Antes dos VCS formais, o versionamento era um processo manual e propenso a erros envolvendo convenções de renomeação de arquivos (por exemplo, acrescentando datas ou tags como "final"). Isso inevitavelmente leva à entropia de arquivos e perda de dados porque o usuário é o único responsável por lembrar das diferenças entre os arquivos.
2. Instantâneos Estruturais
Os primeiros esforços de organização envolveram o método "pilha de pastas"—movendo manualmente os arquivos do projeto em uma hierarquia vertical rotulada como v1.0, v2.0 e v2.1. Embora isso forneça um registro cronológico, ele carece de integridade atômica e auditoria.